/**
 * 
 */
package co.edu.uniquindio.pruebasejb;

import java.util.Date;

import javax.naming.InitialContext;
import javax.naming.NamingException;

import org.junit.Test;

import co.edu.uniquindio.ejbremotos.AutomovilEjbRemote;
import co.edu.uniquindio.ejbremotos.ParametrizadaEjbRemote;
import co.edu.uniquindio.ejbremotos.UsuariosEjbRemote;
import co.edu.uniquindio.logica.Automovil;
import co.edu.uniquindio.logica.Color;
import co.edu.uniquindio.logica.Marca;
import co.edu.uniquindio.logica.Modelo;
import co.edu.uniquindio.logica.Motor;
import co.edu.uniquindio.logica.Pais;
import co.edu.uniquindio.logica.Vendedor;


/**
 * esta clase permite realizar las pruebas de un automovil haciendo uso de  interfaces remotas
 * @author Andres Felipe Abril
 * @author Luis Enrique Robledo
 *
 */
public class PruebaAutomovilEjb {
	
	/**
	 * este atributo representa una instancia remota de un auntomovilEjb
	 */
	private AutomovilEjbRemote automovilEjb;
	/**
	 * este atributo representa una instancia remota de una parametrizadaEjb
	 */
	private ParametrizadaEjbRemote ParamEjb;
	/**
	 * este atributo representa una instancia remota de un usuariosEjb;
	 *
	 */
	private UsuariosEjbRemote usuariosEjb;
	/**
	 * este metodo permite provar la descripcion de un automovil desde un ejbRemoto
	 * @throws 
	 */
	@Test
	public void descripcion() throws NamingException
	{
		
		automovilEjb = (AutomovilEjbRemote) new InitialContext().lookup("java:global/Subasta/AutomovilEjb!co.edu.uniquindio.ejbRemotos.AutomovilEjbRemote");
		ParamEjb=(ParametrizadaEjbRemote)new InitialContext().lookup("java:global/Subasta/ParametrizadaEjb!co.edu.uniquindio.ejbRemotos.ParametrizadaEjbRemote");
        usuariosEjb=(UsuariosEjbRemote) new InitialContext().lookup("java:global/Subasta/UsuariosEjb!co.edu.uniquindio.ejbRemotos.UsuariosEjbRemote");

		
		
		Color color= new Color("Amarillo",1,12,13,5);
		//ParamEjb.agregarColor(color);
		Marca renault= new Marca("renault", "en perfectas condiciones");
		//ParamEjb.agregarMarca(renault);
		Pais pais=new Pais("av123",new Date(),"colombia");
		
		Modelo r4=new Modelo(renault, "r4", "nada");
		try {
			//ParamEjb.agregarModelo(r4);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		Vendedor vendedor= new Vendedor("123","asd@hotmail","carlos",pais,"paco","234");
		try {
			//usuariosEjb.agregarVendedor(vendedor);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		Motor motor= new Motor(12347,4,8);
		//ParamEjb.agregarMotor(motor);
		
		Automovil automovil=new Automovil("124psd",color,r4,vendedor,new Date(),"24 rpm",motor);
		try {
			automovilEjb.registrarAutomovil(automovil);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		automovilEjb.descripcion("124psd");
	}


}
